package com.cloudsea.yunhaistores.service;

import com.cloudsea.yunhaistores.dto.TableAddDTO;
import com.cloudsea.yunhaistores.entity.Tables;
import java.io.OutputStream;
import java.util.List;

public interface TableService {
    /**
     * 添加新桌台
     * @param dto 包含门店ID和桌台名称的DTO
     * @return 创建好的桌台实体
     */
    Tables addTable(TableAddDTO dto);

    /**
     * 根据门店ID查询所有桌台
     * @param storeId 门店ID
     * @return 该门店的桌台列表
     */
    List<Tables> listTablesByStoreId(Long storeId);

    /**
     * 为指定桌台生成点餐二维码
     * @param tableId 桌台ID
     * @param outputStream 图片的输出流
     */
    void generateQrCode(Long tableId, OutputStream outputStream);

    /**
     * 清理桌台，结束当前会话
     * @param tableId 要清理的桌台ID
     */
    void clearTable(Long tableId);
}
